package com.hzlj.position.locate.service;

import com.hzlj.common.message.common.dto.message.MessageNoticeResultDTO;
import com.hzlj.position.config.common.enums.ReportType;
import com.hzlj.position.locate.common.dto.reportCommon.ReportNoticeResultDTO;
import com.hzlj.position.locate.common.dto.reportInspection.ReportInspectionArtificialNoticeDTO;
import com.hzlj.position.locate.common.dto.reportInspection.ReportInspectionCorrectSendNoticeDTO;
import com.hzlj.position.locate.common.dto.reportInspection.ReportInspectionExtDTO;
import com.hzlj.position.locate.common.model.ReportInspection;

import java.util.Date;

/**
 * 通信联络核查-核查(ReportInspection)表服务接口
 *
 * @author lifh
 * @date 2023-07-21 14:20:19
 */
public interface ReportInspectionSyncService {
    /**
     * 人工核验
     */
    ReportNoticeResultDTO syncReportInspectionArtificial(ReportInspectionArtificialNoticeDTO dto);

    /**
     * 自动核验
     */
    Integer syncReportInspectionAuto();

    /**
     * 位置纠偏
     */
    MessageNoticeResultDTO syncReportInspectionCorrect(ReportInspectionCorrectSendNoticeDTO dto);

    /**
     * 位置确认
     */
    void syncReportInspectionPositionCheck(String jzId, String jgCode, ReportInspectionExtDTO ext);

    ReportInspection defaultConvert(String jzId,
                                    String jgCode,
                                    Date now,
                                    ReportType trackCheck);
}
